Small, lightweight, removable and rewritable storage devices are becoming more popular. These devices, such as Universal Serial Bus (USB) “keychain drives,” USB flash drives, memory sticks, or flash memory cards offer advantages over floppy disks. They are smaller, faster, more reliable, and more durable than floppy disks. Their reliability and durability is typically a result of the fact that these drives have no moving parts.
To access or store data on a flash drive, the drive must be connected to a computer. Typically, this is done by plugging the device into a port built into the computer. These flash drives, like other plug-in devices, often can be connected and disconnected from the computer without opening the computer's enclosure. Once connected, the computer can then communicate with the flash drive using a mass storage standard. These standards are supported by many modern operating systems such as Windows and Linux. The plug-in connection may also supply power to the flash drive.
The Universal Serial Bus is defined in the Universal Serial Bus Specification, revision 1.1 and Universal Serial Bus Specification, revision 2.0 which are hereby incorporated herein by reference. These documents are available from the USB Implementers Forum web page at www.usb.org.
Overview
A peer-to-peer data sharing system is disclosed. A first wireless interface receives first data from a first wireless communication device that is enumerated as a first locally attached mass storage device by a first computer system. The first computer system comprises a first attached mass storage device storing a first file comprising first data. A second wireless interface sends the first data to a second wireless communication device that is enumerated as a second locally attached mass storage device by a second computer system. The first data is communicated to the second computer system as data that was stored on the second locally attached mass storage device. A network carries the first data between the first wireless interface and the second wireless interface.
A method of operating a wireless device is disclosed. A first wireless device is identified to a first computer system as a first locally attached mass storage. The first wireless device is removable from the first computer system without opening a case of the first computer system. The first wireless device is registered on a wireless network. Information about common data is received from a second wireless device via the wireless network. The common data is data that is stored on a second computer system. The second wireless device is identified to the second computer system as a second locally attached mass storage. The second wireless device is removable from the second computer system without opening a case of the second computer system. A storage request is sent to the second computer system via the wireless network. Common data is received from the second computer system via the wireless network.
A method of peer-to-peer file sharing is disclosed. A configuration message is received from a first computer system. In response to the configuration message, a first wireless device is enumerated on the first computer system as locally attached mass storage. A registration message is sent to a wireless network. File information about a shared file is received from a second wireless device. The second wireless device is enumerated on a second computer system as locally attached mass storage. A shared block of data is received from the second wireless device. The shared block of data is sent to the first computer system as data that is stored on a locally attached mass storage device.